package com.gis.service;

import java.util.HashMap;
import java.util.Set;

import org.springframework.core.io.Resource;
import org.springframework.web.multipart.MultipartFile;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gis.entity.LayerData;

public interface LayerService extends IService<LayerData> {
    
    
    LayerData uploadFile(LayerData layerData, MultipartFile file) throws Exception;

    HashMap<String, Object> addStore(String storeName, String type, String url) throws Exception;

    HashMap<String, Object> addLayer(String storeName, String layerName, String nativeName, String originName) throws Exception;

    HashMap<String, Object> modifyLayer(String layerName, String styleName) throws Exception;

    LayerData publishLayer(LayerData layerData, MultipartFile file, String type, String storeName, String layerName, String nativeName, String styleName) throws Exception;

    LayerData publishLayer(MultipartFile file, String type, String style) throws Exception;

    HashMap<String, Object> deleteLayer(String storeName, String layerName) throws Exception;

    HashMap<String, Object> deleteStore(String storeName) throws Exception;

    HashMap<String, Object> GetRangeFromGeoserver(String url) throws Exception;

    LayerData publishLayer(MultipartFile file) throws Exception;

    Boolean layerPublish(LayerData layerData) throws Exception;

    Resource getFile(Integer id) throws Exception;

    LayerData fileNameAnalyse(String originFileName) throws Exception;

    Set<String> fieldQuery(String fieldName) throws Exception;
    
}
